
#ifndef _CORDLESS_API_H_
#define _CORDLESS_API_H_

#include "sys_config.h"
#include "sys_types.h"
#include "host_types.h"
#include "host_buf.h"
#include "tcs_core.h"
#include "cordless.h"

#define Cell_API 0
#define GW_API 1
#define TL_API 1
#define COMMON_API 1
#define EXTERN_API 1

#define DATA_TL_TRANSFER_LOCAL_NAME2GW 0x1
#define DATA_GW_UPDATE_INFO2TLS 0x2
#define DATA_GW_TRANSFER_LOCAL_NAME2TL 0x3
#define DATA_CM_TWO_WAY_RADIO_ENABLE 0x4
#define DATA_CM_MONITOR_ENABLE 0x5
#define DATA_GW_GET_TL_VERSION 0x6
#define DATA_TL_SEND_VERSION2GW 0x7

#if (COMMON_API==1)
void CordlessAPI_CM_App_Dev_Update(u_int8 state,t_bdaddr bdAddress, u_int16 psm, u_int16 ACLHandle);
void CordlessAPI_CM_ReceiveDataFromPeer(struct prh_st_tcs_l2conn *device_info, struct host_buf *h_buff);
void CordlessAPI_CM_DMATransfer(u_int8 route,volatile const void * data,u_int16 size);
#endif

#if (TL_API==1)
void CordlessAPI_TL_TransferLocalName2GW();
void CordlessAPI_TL_Send_Version2GW();
u_int8 CordlessAPI_TL_IsRegedTL(t_bdaddr bdAddress);
#endif

#if (GW_API==1)
void CordlessAPI_GW_UpdateInfo2AllTLs();
void CordlessAPI_GW_UpdateLocalName2TL(t_bdaddr bd_addr);
void CordlessAPI_GW_Get_TL_Version(t_bdaddr bd_addr);
#endif

#if (Cell_API==1)
u_int8 CordlessAPI_Cell_Enable();
void CordlessAPI_Cell_ReleaseCall();
void CordlessAPI_Cell_PickUpCall();
void CordlessAPI_Cell_Redail();
#endif

#endif

